# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: NicoHood <archlinux {cat} nicohood {dog} de>
# Contributor: Carl George < arch at cgtx dot us >

_name=gitdb
pkgdesc="A pure-Python git object database"
pkgname=python-gitdb
_commit=bb7d69697b9d24885217b37b94cc0bf4da676fd4  # refs/tags/4.0.10^{}
pkgver=4.0.10
pkgrel=2
epoch=1
url="https://github.com/gitpython-developers/gitdb"
license=(BSD)
arch=(any)
depends=(git python-smmap)
makedepends=(git python-build python-installer python-setuptools python-wheel)
checkdepends=(python-nose python-pytest)
source=(git+$url#tag=$_commit?signed)
sha512sums=('SKIP')
validpgpkeys=('27C50E7F590947D7273A741E85194C08421980C9') # Sebastian Thiel (In Rust I trust!) <byronimo@gmail.com>

build() {
  cd $_name
  python -m build --wheel --no-isolation
}

# some tests need to be disabled, because of coupling with the project
# repository: https://github.com/gitpython-developers/gitdb/issues/51
check() {
  cd $_name
  local TEST_TMPDIR=$(mktemp -d)
  (
    cd "$TEST_TMPDIR"
    git init
    git config user.name "Test User"
    git config user.email "test@user.org"
    for commit in {1..50}; do
      touch "file$commit"
      git add "file$commit"
      git commit -m "file$commit"
    done
  )
  export GITDB_TEST_GIT_REPO_BASE="$TEST_TMPDIR/.git"
  pytest -vv -k "not test_pack_writing"
}

package() {
  cd $_name
  python -m installer --destdir="$pkgdir" dist/*.whl
  install -vDm 644 {AUTHORS,README.rst} -t "$pkgdir/usr/share/doc/$pkgname/"
  install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
}
